home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / prog / atari / m2 / cat3src / magic / d / mttime.d < prev    next >
Text File  |  1997-10-26  |  4KB  |  102 lines

  1. (*----------------------------------------------------------------------*
  2.  *                                                                      *
  3.  *  MAGICTOOLS   Modula's  All purpose  GEM  Interface  Cadre  Toolbox  *
  4.  *               ÿ         ÿ            ÿ    ÿ          ÿ               *
  5.  *----------------------------------------------------------------------*
  6.  * Version 3.30  02.02.1992     (C)90/91/92 by Peter Hellinger Software *
  7.  *----------------------------------------------------------------------*
  8.  *            Dieses Modul ist urheberrechtlich geschtzt.              *
  9.  *                                                                      *
  10.  * Die Ver”ffentlichung des Quelltextes oder Teilen daraus, sowie die   *
  11.  * Verbreitung des bersetzten, nicht gelinkten Codes in schriftlicher, *
  12.  * oder maschinenlesbarer Form, insbesondere in Zeitschriften, Mail-    *
  13.  * boxen oder anderen Medien bedarf der ausdrcklichen schriftlichen    *
  14.  * Einverst„ndnisserkl„rung des Autors.                                 *
  15.  *                                                                      *
  16.  * Die Verbreitung des Moduls als Teil eines gelinkten Programms ist    *
  17.  * fr Lizenznehmer ausdrcklich erlaubt!  Der Autor beh„lt sich das    *
  18.  * Recht vor, diese Erlaubnis jederzeit und ohne Angaben von Grnden zu *
  19.  * widerrufen.                                                          *
  20.  *----------------------------------------------------------------------*)
  21.  
  22. (*----------------------------------------------------------------------*
  23.  * mtTime       Funktionen zur Zeit- und Datumsmanipulation             *
  24.  *----------------------------------------------------------------------*)
  25.  
  26. DEFINITION MODULE mtTime;
  27.  
  28. FROM MagicSys   IMPORT  Nil, Null, Bit0, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6,
  29.                         Bit7, Bit8, Bit9, Bit10, Bit11, Bit12, Bit13, Bit14,
  30.                         Bit15, LOC, Byte, ByteSet, sWORD, sINTEGER, sCARDINAL,
  31.                         sBITSET, lINTEGER, lCARDINAL, lWORD, lBITSET;
  32.  
  33.  
  34.  
  35.  
  36.  
  37. (* Kalender-Datum *)
  38.  
  39. PROCEDURE EncodeDate (day, month, year: sCARDINAL): sCARDINAL;
  40. (* Wandelt das bergebene Datum ins DOS-Format *)
  41.  
  42. PROCEDURE DecodeDate (date: sCARDINAL; VAR day, month, year: sCARDINAL);
  43. (* Wandelt das bergebene DOS-Datum in verst„ndliche Werte *)
  44.  
  45. PROCEDURE DateInNum (date: sCARDINAL): lCARDINAL; 
  46. (* Wandelt ein Datum im GEMDOS-Format in eine Seriennummer.
  47.  * Vorteil: Mit einer Seriennummer kann man rechnen...
  48.  * Das Format ist die Anzahl der Tage seit dem 1.1.1900
  49.  *)
  50.  
  51. PROCEDURE NumInDate (number: lCARDINAL): sCARDINAL;
  52. (* Wandelt eine von DateInNum erzeugte Seriennummer wieder in ein
  53.  * GEMDOS-Datum
  54.  *)
  55.  
  56. PROCEDURE DateString (date: CARDINAL; VAR str: ARRAY OF CHAR);
  57. (* Wandelt eine Datumsangabe im GEMDOS-Format in einen String.
  58.  * In der Form 'tt.mm.jjjj'
  59.  *)
  60.  
  61. PROCEDURE DayOfWeek (date: sCARDINAL): sCARDINAL;
  62. (* Berechnet aus dem GEMDOS-Datum den Tag der Woche.
  63.  * 0 =  Montag, 2 = Dienstag, ... 6 = Sonntag
  64.  *)
  65.  
  66. CONST   German =        0;
  67.         English =       1;
  68.         French =        2;
  69.  
  70. PROCEDURE NameOfDay (language, day: sCARDINAL; VAR name: ARRAY OF CHAR);
  71. (* Liefert den Namen eines Tages in der jeweiligen Sprache.
  72.  * 0 =  Sonntag, 1 = Montag, 2 = Dienstag, ... 6 = Samstag
  73.  *)
  74.  
  75. PROCEDURE NameOfMonth (language, month: sCARDINAL; VAR name: ARRAY OF CHAR);
  76. (* Liefert den Namen eines Monats in der jeweiligen Sprache.
  77.  * 1 =  Januar, 12 = Dezember
  78.  *)
  79.  
  80. (* Uhrzeit *)
  81.  
  82. PROCEDURE EncodeTime (hour, minute, second: sCARDINAL): sCARDINAL;
  83. (* Wandelt die bergebene Zeit ins DOS-Format *)
  84.  
  85. PROCEDURE DecodeTime (time: sCARDINAL; VAR hour, minute, second: sCARDINAL);
  86. (* Wandelt die bergebene DOS-Zeit in verst„ndliche Werte *)
  87.  
  88. PROCEDURE TimeInNum (time: sCARDINAL): lCARDINAL;
  89. (* Wandelt eine DOS-Zeit in eine Seriennummer. Die Seriennummer ist die
  90.  * Anzahl der Sekunden seit Mitternacht.
  91.  *)
  92.  
  93. PROCEDURE NumInTime (num: lCARDINAL): sCARDINAL;
  94. (* Wandelt eine eine Seriennummer in DOS-Zeit. *)
  95.  
  96. PROCEDURE TimeString (time: CARDINAL; VAR str: ARRAY OF CHAR);
  97. (* Wandelt eine Zeitangabe im DOS-Format in einen String.
  98.  * Im Format 'hh:mm:ss'
  99.  *)
  100.  
  101. END mtTime.
  102.